From f0305dc99c0c723912bab7058f4b569f8c666dea Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Date: Wed, 22 Feb 2017 16:21:31 -0800
Subject: [PATCH] Make the build of pyc files conditional

This commit adds a new configure option --disable-pyc-build to disable
the compilation of pyc.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
[ Andrey Smrinov: ported to Python 3.6 ]
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
[ Adam Duskett: ported to Python 3.12.0 ]
Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com>
---
 Makefile.pre.in | 2 ++
 configure.ac    | 6 ++++++
 2 files changed, 8 insertions(+)

diff --git a/Makefile.pre.in b/Makefile.pre.in
index dd5e69f7ab1..d7634f5b94a 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -2320,6 +2320,7 @@ libinstall:	all $(srcdir)/Modules/xxmodule.c
 		$(DESTDIR)$(LIBDEST); \
 	$(INSTALL_DATA) $(srcdir)/LICENSE $(DESTDIR)$(LIBDEST)/LICENSE.txt
 	@ # Build PYC files for the 3 optimization levels (0, 1, 2)
+ifeq (@PYC_BUILD@,yes)
 	-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
 		$(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \
 		-o 0 -o 1 -o 2 $(COMPILEALL_OPTS) -d $(LIBDEST) -f \
@@ -2329,6 +2330,7 @@ libinstall:	all $(srcdir)/Modules/xxmodule.c
 		$(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \
 		-o 0 -o 1 -o 2 $(COMPILEALL_OPTS) -d $(LIBDEST)/site-packages -f \
 		-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
+endif
 	-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
 		$(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt
 	-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
diff --git a/configure.ac b/configure.ac
index 384718db1f0..a53c6fa9e08 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1479,6 +1479,12 @@ fi
 
 AC_MSG_CHECKING([LDLIBRARY])
 
+AC_SUBST(PYC_BUILD)
+
+AC_ARG_ENABLE(pyc-build,
+	AS_HELP_STRING([--disable-pyc-build], [disable build of pyc files]),
+	[ PYC_BUILD="${enableval}" ], [ PYC_BUILD=yes ])
+
 # MacOSX framework builds need more magic. LDLIBRARY is the dynamic
 # library that we build, but we do not want to link against it (we
 # will find it with a -framework option). For this reason there is an
-- 
2.43.0

